import util from "@/assets/js/util"

export default function (fm, e) {
  if (e=='clear') {
		if (fm.marker) {
      fm.marker.setMap(null)
      fm.marker = null
    }
		return fm
	}
  let _markers = []
  for (let i in e) {
    let m = {}
    m.id = i * 1 + 1
    m.position = new TMap.LatLng(e[i].latitude, e[i].longitude)
    m.styleId = 'markStyle'
    m.properties = e[i]
    _markers.push(m)
  }
  // console.log(fm.marker)
  if (fm.marker) fm.marker.setMap(null)
  fm.marker = new TMap.MultiMarker({
    map: fm.map,  //指定地图容器
    //样式定义
    styles: {
      //创建一个styleId为"myStyle"的样式（styles的子属性名即为styleId）
      markStyle: new TMap.MarkerStyle({
        "width": 45,  // 点标记样式宽度（像素）
        "height": 45, // 点标记样式高度（像素）
        "src": util.MARKER_IMG,  //图片路径
        "anchor": { x: 16, y: 32 }, //焦点在图片中的像素位置，一般大头针类似形式的图片以针尖位置做为焦点，圆形点以圆心位置为焦点
      })
    },
    geometries: _markers
  })

  fm.map.panTo(new TMap.LatLng(e[0].latitude, e[0].longitude))

  //初始化infoWindow
  if (fm.window) {
    fm.window.setMap(null)
  } else {
    fm.window = new TMap.InfoWindow({
      map: fm.map,
      position: new TMap.LatLng(e[0].latitude, e[0].longitude),
      offset: { x: 0, y: -32 } //设置信息窗相对position偏移像素，为了使其显示在Marker的上方
    })
    fm.window.close()
  }
  
  return fm
}

/**
 * 
   import useMarker from "@/hooks/qq-map/useMarker"
   fm = useMarker(fm,e)
   fm.marker.on("click", markerClick)
   function markerClick(e) {
			console.log(e)
			fm.window.open(); //打开信息窗
    	fm.window.setPosition(e.geometry.position);//设置信息窗位置
    	fm.window.setContent(e.geometry.position.toString());//设置信息窗内容
	  }
 * 
 */